home *** CD-ROM | disk | FTP | other *** search
- global carList, gFinalRankings, gPlayer, geEnemyList, gTimes
-
- on prepareFrame me
- if count(carList) > count(gFinalRankings) then
- diff = count(carList) - count(gFinalRankings) - 1
- startCar = count(gFinalRankings) + 1
- repeat with n = startCar to startCar + diff
- add(gFinalRankings, carList[n][4])
- end repeat
- end if
- gTimes = []
- theSpriteNum = 401
- repeat with n = 1 to count(gFinalRankings)
- thePoints = registerPoints(gFinalRankings[n], n)
- member("Rank" & string(n) & "Points").text = string(thePoints)
- if gFinalRankings[n] = gPlayer.pMySpriteNum then
- sprite(theSpriteNum).member = member("ib" & string(gPlayer.pCarType))
- member("Rank" & string(n) & "Name").text = getStringName(gPlayer.pCarType)
- if gPlayer.pDamage < 100 then
- add(gTimes, gPlayer.pLapTimes[3])
- else
- add(gTimes, "DNF")
- end if
- else
- theEnemyNum = e_findEnemyFromSpriteNum(gFinalRankings[n])
- sprite(theSpriteNum).member = member("ib" & string(geEnemyList[theEnemyNum][2].carType))
- member("Rank" & string(n) & "Name").text = getStringName(geEnemyList[theEnemyNum][2].carType)
- if count(geEnemyList[theEnemyNum][12]) < 3 then
- finishTime = finishRace(theEnemyNum, n)
- add(gTimes, finishTime)
- else
- add(gTimes, geEnemyList[theEnemyNum][12][3])
- end if
- end if
- theSpriteNum = theSpriteNum + 1
- end repeat
- repeat with n = 1 to count(gTimes)
- theTime = convertTimeToString(gTimes[n])
- member("Rank" & string(n) & "Time").text = theTime
- end repeat
- repeat with n = 409 to 420
- sprite(n).visible = 1
- end repeat
- end
-
- on finishRace enemyNum, place
- finalTime = 0
- if count(geEnemyList[enemyNum][12]) < 1 then
- finalTime = 5 * 60 * 60
- else
- if count(geEnemyList[enemyNum][12]) < 2 then
- finalTime = geEnemyList[enemyNum][12][1] * 3
- else
- if count(geEnemyList[enemyNum][12]) < 3 then
- lap1 = geEnemyList[enemyNum][12][1]
- lap2 = geEnemyList[enemyNum][12][2] - geEnemyList[enemyNum][12][1]
- avgTime = (lap1 + lap2) / 2
- finalTime = geEnemyList[enemyNum][12][2] + avgTime
- else
- finalTime = geEnemyList[enemyNum][12][3]
- end if
- end if
- end if
- if place > 1 then
- if finalTime < gTimes[place - 1] then
- finalTime = gTimes[place - 1] + (3 * 60)
- end if
- end if
- return finalTime
- end
-
- on getStringName theName
- case theName of
- #rock:
- return "CPU 1"
- #stoneCold:
- return "CPU 2"
- #kane:
- return "Player"
- #undertaker:
- return "CPU 3"
- end case
- end
-